1. Field of the Invention
The present invention relates generally to online help systems, and in particular, to a method, apparatus, and article of manufacture for tracking a user's location and viewing history within an online help system.
2. Description of the Related Art
The proliferation of information technology has provided the opportunity for users of various background and skill levels to use computers and computer programs. To enable diverse users to fully utilize and understand an application, printed manuals are often provided. In addition to printed manuals, interactive electronic help or documentation systems are often available to the user. Such help and documentation systems may be utilized on an individual user's computer through an interactive graphical user interface (referred to as an online help system or other online documentation system).
Document definition languages (DDL) are often used to define the appearance of the information within a help system for display by a Web browser (or other capable application). Since a DDL is a display language defining how a document will be displayed, it is static and distinguishable from a programming language. An example of a DDL is hypertext markup language (HTML). HTML is often utilized to define information within a help system and utilizes a predefined set of “tags” to describe elements to be displayed. Extensible markup language (XML) is another DDL utilized to define elements to be displayed. XML is more flexible than HTML and allows tags to be defined by the developer of the file to be displayed.
Interactive functionality may also be added to HTML and XML pages. Such functionality may be provided by scripting languages. Scripting languages are not compiled into bytecode (similar to other programming languages such as Java™) but remain in source code embedded within an HTML or XML document and must be translated a line at a time into machine code by an interpreter. JavaScript™, LiveScript™, and VBScript™ are examples of scripting languages used to provide such additional functionality to Web pages.
With both HTML and XML elements in the file may be linked to another file or element in another file. Accordingly, a typical HTML or XML based online help system contains many hundreds of HTML/XML files with hundreds of links between the files. The typical HTML/XML based online help system may also consist of statically linked files, with the start and end of the links defined by the author of the online help. Accordingly, help files cannot be customized for/by individual users locally. Help file authors may provide alternate usage paths to aid different kinds of users. However, the user cannot modify such paths dynamically.
To provide such customization in the prior art, proprietary help engines were utilized. Alternatively, the application program that called the online help may be required to track usage of the help, and store the information within the application or in a database. Further, such prior art customization often forces the storage and use of a separate set of help files for each category of potential user. Additionally, to provide such customization, a user may be forced to run a locally installed Web server that accesses server-side include (SSI) files or complex-style sheets for the different types of information.
Accordingly, what is needed is a dynamic customizable help system that does not require a separate or custom application, multiple sets of help files, or a local running Web server.